package com.moxiao.yfjh.module.order.controller.admin.brokeragerecord.vo;

import lombok.*;
import io.swagger.v3.oas.annotations.media.Schema;
import com.moxiao.yfjh.framework.common.pojo.PageParam;
import org.springframework.format.annotation.DateTimeFormat;

import java.time.LocalDateTime;

import static com.moxiao.yfjh.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND;

@Schema(description = "管理后台 - 相亲佣金记录分页 Request VO")
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
public class BlindBrokerageRecordPageReqVO extends PageParam {

    @Schema(description = "用户编号:分销员", example = "32270")
    private Long userId;

    @Schema(description = "业务编号", example = "23208")
    private String bizId;

    @Schema(description = "业务类型：1-订单，2-提现", example = "1")
    private Byte bizType;

    @Schema(description = "标题")
    private String title;

    @Schema(description = "金额", example = "14352")
    private Integer price;

    @Schema(description = "当前总佣金", example = "11275")
    private Integer totalPrice;

    @Schema(description = "说明", example = "你说的对")
    private String description;

    @Schema(description = "状态：0-待结算，1-已结算，2-已取消", example = "2")
    private Byte status;

    @Schema(description = "冻结时间（天）")
    private Integer frozenDays;

    @Schema(description = "解冻时间")
    @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
    private LocalDateTime[] unfreezeTime;

    @Schema(description = "来源用户等级：用户id")
    private Integer sourceUserLevel;

    @Schema(description = "来源用户编号", example = "7322")
    private Long sourceUserId;

    @Schema(description = "创建时间")
    @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
    private LocalDateTime[] createTime;

    /**
     * 分销员用户昵称
     */
    @Schema(description = "分销员用户昵称")
    private String nickname;

    /**
     * 会员用户昵称
     */
    @Schema(description = "会员用户昵称")
    private String sourceUserName;

    private String mobile;
}
